local status_ok, mason = pcall(require, "mason")
if not status_ok then
    vim.notify("Plugin mason is not existed")
    return
end
local status_ok, mason_lspconfig = pcall(require, "mason")
if not status_ok then
    vim.notify("Plugin mason_lspconfig is not existed")
    return
end

mason.setup({
    ui = {
        icons = {
            package_installed = "✓",
            package_pending = "➜",
            package_uninstalled = "✗",
        },
        border = 'rounded',
    },
})

mason_lspconfig.setup({
    ensure_installed = {
        'lua_ls',
        'clangd',
        'json-lsp',
        'bash-language-server',
    },
    keymaps = {
        toggle_package_expand = "<cr>",
        toggle_package_install_log = "<cr>",
        install_package = "i",
        uninstall_package = "X",
        -- update_package = "u",
        -- check_package_version = "c",
        -- update_all_packages = "U",
        -- check_outdated_packages = "C",
        -- cancel_installation = "<C-c>",
        -- apply_language_filter = "<C-f>",
        -- toggle_help = "g?",
    },
})